home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 26
/
Cream of the Crop 26.iso
/
bbs
/
tdk_v136.zip
/
SYSOP.DOC
< prev
next >
Wrap
Text File
|
1997-07-22
|
20KB
|
416 lines
* FEEL FREE TO INCLUDE THIS DOCUMENT WITH EVERY DOOR YOU WRITE *
* MODIFY AS NEEDED *
───────────────────────────────────────────────────────────────────────────────
▀▀▀▀▀▀▀▀ ▀▀▀▀▀▀ ▀▀ ▀▀
▀▀ ▀▀ ▀▀ ▀▀ ▀▀
▀▀ ▀▀ ▀▀▀ ▀▀▀▀▀ The DoorKit!
▀▀ ▀▀ ▀▀ ▀▀ ▀▀
▀▀ ▀▀▀▀▀▀ ▀▀ ▀▀
The BBS Door Development Kit By The People - For The People!
───────────────────────────────────────────────────────────────────────────────
The ANSI/ASCII/RIP/MAX DoorKit v1.35
No Copyright Notices Expressed Or Implied
Compiled By Larry L. Athey From Numerous Sources
───────────────────────────────────────────────────────────────────────────────
DISCLAIMER:
-----------
The author (Your Name) has taken every precaution to insure that no harm or
damage will occur on computer systems operating this package. Nevertheless,
the author shall NOT be held liable for whatever may happen on your computer
system or to any computer systems which connects to your own as a result of
operating this package. The user assumes full responsibility for the correct
operation of this software package, whether harm or damage results from any
software error, hardware malfunction, or operator error. NO warranties are
offered, expressly stated or implied, including without any limitation or
restriction any warranties of operation for a particular purpose and / or
merchantability. If you do not agree with this, then absolutely do NOT use
this program!
───────────────────────────────────────────────────────────────────────────────
LICENSE AGREEMENT:
------------------
The door program, support files, and documentation are copyrighted products
of (Your Software Company). The author reserves all rights to these products.
This is protected by the United States of America (USA) and International
Copyright Laws. In no way shall the components of the door software package
be reproduced or modified in any form or method without prior expressly
written permission from the author.
Tampering with or altering the contents or integrity of the door software
package is prohibited. No fee may be charged by any agency other than the
author beyond the cost of distributing unregistered copies without prior
expressly written permission from the author.
This door is distributed under the Shareware concept. You are allowed to
operate this door for a trial period of thirty (30) days. After this trial
period, you must register the door or discontinue its usage. Again if you
do not agree with this, then do NOT use this door!
───────────────────────────────────────────────────────────────────────────────
GUARANTEE:
----------
Ha Ha Ha Ha....Guarantee? Okay, if this program breaks, I guarantee that you
get to keep both pieces....How's that? :)
───────────────────────────────────────────────────────────────────────────────
REQUIREMENTS:
-------------
(Add your program system requirements here...)
This door is 100 percent ANSI, ASCII, AVATAR, RIP and MAX aware.
───────────────────────────────────────────────────────────────────────────────
INSTALLATION:
-------------
1. Create a directory for the door (example: "C:\DOOR").
2. Copy all the contents of this archive into that directory.
3. Run the door configuration program.
4. To insure proper multi-node use in a DOS based multi-tasking environment,
SHARE.EXE must be installed prior to the door, and prior to the OS.
5. In order to run the door program online, the following parameters may
be used. For a list of all available command line parameters, simply
execute the door program with no parameters on the command line....
DropFile Specifiers:
--------------------
"/D={Node Work Path}\DOOR.SYS" - This tells the program to use the
DOOR.SYS drop file and the {Node Work Path} points to the proper
directory where the drop file is to be created or found.
"/R={Node Work Path}\DORINFO#.DEF" - This tells the program to use the
DORINFO#.DEF drop file and the {Node Work Path} points to the proper
directory where the drop file is to be created or found.
"/M={Node Work Path}\MX_USER.DAT" - This tells the program to use the
MX_USER.DAT drop file and the {Node Work Path} points to the proper
directory where the drop file is to be created or found.
Optional Parameters:
--------------------
"/P={MAXterm Home Directory}" - If this door supports MAX Graphics and
MAX pseudo network spool operation, this parameter is used to start up
the spool and point it to the directory where MAXterm is installed. You
may only use this in conjunction with the /L parameter.
"/S##### (Where ##### is the user's actual baud rate) - This specifies
the online caller's actual baud rate. You use this parameter to force a
new baud rate if you are running the door with the DOOR.SYS drop file
and would like to force the door to use the actual baud rate rather than
the locked port speed.
"/N###" (Where ### is 1..?) - This specifies the current node number and
tells the door which NODE###.CTL file to use.
"/L" - This tells the door to load up in LOCAL mode.
"/O" - This tells the door to load up in ONLINE mode. This is useful if
you are running the door online without a drop file. Such is the case if
you wanted to run the door between your BBS and a front end mailer or a
waiting for caller program where no drop files are created in advance.
"/X" - This tells the door to send a !|1K|*|#|#|# at exit time to either
clear the remote screen in RIPterm or to flip MAXterm back to text mode.
"/U#####" (Where ##### is the user's actual BBS record number) - This is
used in the event the door needs to know the user's actual record number
when it is not contained in the drop file, or if no drop file is in use.
"/A#####" (Where ##### is the user's actual BBS access level) - This is
used in the event the door needs to know the user's actual access level
when it is not contained in the drop file, or if no drop file is in use.
"/T#####" (Where ##### is the user's remaining time in minutes) - This
is used in the event the door needs to know the user's actual remaining
online time when it is not contained in the drop file, or if no drop
file is in use.
"/E#####" (Where ##### is the number of minutes until your next event)
This is used in the event the door needs to know when the next event in
your BBS is to take place when it is not contained in the drop file, or
if no drop file is in use.
"/Z[FirstName_LastName]" - This is used in the event that you have to
force the user's name and alias in the door. If there is a first name
and last name, they must be separated by an underscore, not a space..
"/CONFIG" - This is used only in the event that this door has built in
configuration routines. If the door has none, then this parameter will
kick back an error and halt the program.
───────────────────────────────────────────────────────────────────────────────
THE CONTROL FILE EDITOR:
------------------------
┌─────────────────────────────────────────────────────────────────────┐
│ Editing Control File For Node #1 │
├─────────────────────────────────────────────────────────────────────┤
│ SysOp First Name:[Your First Name_____] │
│ SysOp Last Name:[Your Last Name______] │
│ Name Of This BBS:[Your BBS Name___________________________] │
│ SysOp Security:[500__] │
│ Serial Number:[__________] │
│ BBS Home Path:[C:\MX\______] │
│─────────────────────────────────────────────────────────────────────│
│ Using Fossil:[Y] Input Buffer Size:[4096] │
│ Locked Port Rate:[38400_] Output Buffer Size:[4096] │
│ Digi Over Ride:[N] Non-Standard Port:[N] Save ▄ │
│ Comm Data Bits:[8] Comport Number:[1_] ▀▀▀▀▀▀ │
│ Comm Parity:[N] Port IRQ Number:[4_] Quit ▄ │
│ Comm Stop Bits:[1] Port Hex Address:[03F8] ▀▀▀▀▀▀ │
└─────────────────────────────────────────────────────────────────────┘
SysOp First Name: Self Explanatory
SysOp Last Name: " "
Name Of This BBS: " "
SysOp Security: Set this to the same numeric value as the sysop
security level on your BBS.
Serial Number: Enter the serial number here that you are issued
when registering this program. Repeat this step
for every node.
BBS Home Path: Enter the path to your BBS home directory here.
This has nothing to do with drop files, the path
to your drop files is passed on the command line.
this is used so this program can locate your BBS
system data files.
Using Fossil: Are you using a fossil driver? [Y/N]
Locked Port Rate: Enter the speed here in which your comport is
locked at.
Digi Over Ride: Do you want this program to use DigiBoard over
ride comm routines? [Y/N]
Comm Data Bits: Set to the same as your BBS's Data Bits setting.
Comm Parity: Set to the same as your BBS's Parity setting.
N=None, O=Odd, E=Even
Comm Stop Bits: Set to the same as your BBS's Stop Bits setting.
Input Buffer Size: Set this to the same as your BBS or fossil driver.
Output Buffer Size: Set this to the same as your BBS or fossil driver.
Non-Standard Port: Are you using a non-standard IRQ setting? [Y/N]
Comport Number: The comport number for this node (If Non-Standard).
Port IRQ Number: The IRQ number for this node (If Non-Standard).
Port Hex Address: This port's address in hex (If Non-Standard).
───────────────────────────────────────────────────────────────────────────────
SAMPLE BATCH FILES FOR RUNNING THE DOOR:
----------------------------------------
CD\DOOR
DOOR.EXE /D=C:\BBS\NODE1\DOOR.SYS
CD\BBS
EXIT
or:
CD\DOOR
DOOR.EXE /N2 /S14400 /R=C:\BBS\NODE2\DORINFO2.DEF
CD\BBS
EXIT
───────────────────────────────────────────────────────────────────────────────
OTHER GENERAL INFORMATION:
--------------------------
Global System Variables Used By The Door:
─────────────────────────────────────────
{TIME} = The Current Time
{DATE} = The Current Date
{NODE} = The Current Node Number
{BAUD} = The Current Baud Rate
{MINS} = Time Left Online In Minutes
{EVENT} = Minutes Until Next Event
{PORT} = The Current Comm Port In Use
{SEC} = The User's Security Level
{BBS} = Your BBS Name
{USER} = User's Full Name
{SYSOP} = SysOp's Full Name
{UFIRST} = User's First Name
{ULAST} = User's Last Name
{SFIRST} = SysOp's First Name
{SLAST} = SysOp's Last Name
{PROG} = The Program Name and Version Number
{ADDR} = The Port Address Stored In The .CTL File
{IRQ} = The Port IRQ Stored In The .CTL File
{SYSSEC} = SysOp Security Stored In The .CTL File
{SERIAL} = The Serial Number Stored In The .CTL File
{INSERT1}
Through
{INSERT5} = These are system variables that change from
time to time through out the program. Check
your screen files to see what their purpose
is at the time.
These variables can also be used in text files and screen files used by
your program. You will also want to look at your ANSI and RIP files with
a text editor to make sure that any Global System Variables you have used
have not been split as this will cause them to display incorrectly.
There is a neat little feature incorporated in the variables called Padding
that is used to allign text on your screen, or to ensure that variables will
only take up X amount of characters on the screen. Any underscores "_" in a
variable are translated into spaces at run time and can be used on either
side of the variable. The way to look at it is a "Pad Left" and "Pad Right"
sort of feature.
Let's try an experiment with the {USER} variable, we'll just use some
short strings of text to demonstrate the usage of variables and padding.
Let's say that the user's real name is "Jimi Hendrix". (Just because...)
Actual Text: Hello {USER}, how are you today?
Translates To: Hello Jimi Hendrix, how are you today?
Actual Text: Hello {USER________________________}, how are you today?
Translates To: Hello Jimi Hendrix , how are you today?
Actual Text: Hello {________________________USER}, how are you today?
Translates To: Hello Jimi Hendrix, how are you today?
Now, granted that these aren't really practical examples, but it shows you
how padded and non-padded variables work. Padding would be especially handy
if you were creating something like a user statistics screen. You could put
the padded variables on an ANSI background, and since there is padding in
there, the screen will always be displayed in a uniformed fashion. As you
can see in the above example, the variable {USER} is padded so there is a
total of 30 spaces on the screen. If you were to chop it down to 20, even
if the user's name was longer than 20 characters, only 20 characters will
be displayed on the screen at once.
If you have ever noticed with other programs that use variables of any kind,
to make sure that your screens always display perfectly alligned is to use
ANSI animation to go to a specific X/Y coordinate and then plot the variable
on whatever backdrop you are using. Guess what?....ASCII callers are out of
luck in this case because there is no cursor control in ACSII/TTY emulation.
Inline Color Tokens:
────────────────────
Inline Color Tokens are similar to Global System Variables with just one
exception....They don't work in screen files. These are used for adding
color to text files. Your ANSI colors range from 0 to 31, any number above
15 forces ANSI blink on. If you want to change the color anywhere in a text
file, simply add a color code in a pair of fancy brackets before your text.
An example would be, to change your text to yellow add the token: {14} just
before it. You have as many color changes that you can fit into a 256
character line. Padding has no effect on inline color tokens.
───────────────────────────────────────────────────────────────────────────────
MULTINODE USE:
--------------
This door supports multinode use and provides automatic multi-tasker
support (time slice releasing) for a wide variety of multi-taskers.
Such as DesqView, OS/2, and Windows. You will need to run the program
configuration to create all of the needed control files and node work
directories. The only thing left to do after that is create batch files
for each node.
───────────────────────────────────────────────────────────────────────────────
TROUBLESHOOTING:
----------------
1. This door DOES NOT REQUIRE a fossil driver to run correctly.
2. If you are running a high speed modem (9600 baud or above), then I
suggest you run your BBS/Mailer/Doors at a locked baud rate. On high
speed error correcting modems, locking the baud rate will have a
noticable increase on the speed of text that is sent. It's beyond
the scope of this document to discuss configuring your BBS and
mailer for a locked baud rate, you may wish to consult your BBS docs
for information on that. Here are a couple things to keep in mind
when setting up door with a locked baud rate:
a. If you are using a fossil, then make sure to tell the fossil
that the port is locked. For BNU, to lock com1: at 38,400, you
would use something like "L0=38400,8N1" on BNU's command line.
b. If you lock the baud for one program, it must be locked for
everything. You can't lock the baud for just this door, but
not your BBS/Mailer.
3. What follows is some information on possible strange situations
that may occur on some systems:
a. Low speed users can use the door, but high speed users get garbage.
- If you are the DORINFOx.DEF drop file, then there is a chance
your BBS is writing the locked port speed to the drop file
rather than the actual caller baud rate. You should either
change to the DOOR.SYS drop file, or use the /S parameter to
pass the actual baud rate to the door.
Several converter programs are readily available on most
BBS systems. CallDoor is a good one if you can find it.
b. The door hangs up when a user enters the door.
- Sounds like the door is getting the wrong baud rate somehow.
Try switching over to the DOOR.SYS drop file method if possible.
- This can also be cause by using a fossil driver and locking the
comport at a rate higher than 38400. If this is the case, then
reduce your locked port speed and try again.
c. Text and screens are getting cut off.
- If you are running with a locked baud, then this could be caused
by some sort of FLOW CONTROL problem. Make sure your fossil is
loaded correctly and not locked faster than 38400 baud.
- If you're using something other than the DOOR.SYS drop file,
then I always suggest trying to use DOOR.SYS if possible. It is
the most reliable method and has had the most testing. If that
is not possible try DORINFOx.DEF as an alternative.
d. The door locks up the BBS on every node.
- This can happen with fossil driver or the internal communications
routines because it uses the default comport of 1 when NONE or
COM0: is found in the drop file.
e. ANSI is reflected correctly on the local screen but the user is
getting garbage when using DORINFOx.DEF.
- Assuming the user has ANSI installed then most likely the problem
is at your end. First make sure the dropfile is passing the actual
baud rate INSTEAD of the locked port speed. If it is not passing
correct baud rate then you may need to use DOOR.SYS instead.
f. When a user enters the door or when you run it locally, the screen
appears to cycle (flipping) over and over until the program shuts
down with a "Runtime Error 202".
- This is caused by people running hacked versions of their fossil
driver. Even though most of these hacks are nothing more than a
copy with a new version number, once it's tampered with, it's a
defective copy. Programs to avoid are BNU 2.xx and X00 2.xx. If
at all possible, get your fossil drivers author direct!